Multiple code coded mechanism

ABSTRACT

A coded switch operable by any one of a plurality of codes which may include a set of independently rotatable drive wheels supported on a common axis which may be in simultaneous engagement with a plurality of code sets, each code set having independently rotatable code wheels engageable with each drive wheel. A code test wheel is also independently rotatably supported on the same common axis with the drive wheels and carries cam surfaces operably engaged with cam followers associated with the code sets for sensing whether the code wheels have a predetermined angular relationship representative of a code and for initiating same indication or response when this or other angular relationship is present. Means are provided to insert a code by sequentially rotating the drive wheels and code test wheel in a manner to vary and angular relationships of the code wheels and then to check the code input to see if it is a valid code then stored in the code wheels of a code set. An additional code set may be provided which is adapted to indicate the &#39;&#39;&#39;&#39;sum&#39;&#39;&#39;&#39; of the codes in the code wheel of all code sets engaged with a particular drive wheel.

United States Patent Barnette Sept. 3, 1974 MULTIPLE CODE CODED MECHANISM Jon H. Barnette, Albuquerque, N. Mex.

[73] Assignee: The United States of America as represented by the United States Atomic Energy Commission, Washington, DC.

[22] Filed: Aug. 6, 1973 [21] Appl. No.: 385,786

[75] Inventor:

Primary Examiner-Albert G. Craig, Jr. Attorney, Agent, or EirmJohn A. Horan; Dudley W. King; Richard E. Constant CONTROL AND omv: APPARATUS [5 7 ABSTRACT A coded switch operable by any one of a plurality of codes which may include a set of independently rotatable drive wheels supported on a common axis which may be in simultaneous engagement with a plurality of code sets, each code set having independently rotatable code wheels engageable with each drive wheel. A code test wheel is also independently rotatably supported on the same common axis with the drive wheels and carries cam surfaces operably engaged with cam followers associated with the code sets for sensing whether the code wheels have a predetermined angular relationship representative of a code and for initiating same indication or response when this or other angular relationship is present. Means are provided to insert a code by sequentially rotating the drive wheels and code test wheel in a manner to vary and angular relationships of the code wheels and then to check the code input to see if it is a valid code then stored in the code wheels of a code set. An additional code set may be provided which is adapted to indicate the sum of the codes in the code wheel of all code sets engaged with aparticular drive wheel.

11 Claims, 10 Drawing Figures UTILIZATION MEANS UTILIZATION MEANS PATENTEDSEPB 1924 32,873

upon the number of codes recorded in the mechanism 10. A code test or try code wheel 16 may also be supported on shaft 14 so as to also be independently rotatable from any of the drive wheels to provide a test of whether a proper code has been inserted into the code mechanism and for other purposes described in more detail below.

A plurality of code sets or banks are arranged about the periphery of the drive gears, with one code set being provided for each desired code, as illustrated by code sets 18 and 18, together with an additional code test set 19 to act as a check or test of the correctness of all the codes inserted in the code mechanism in the code sets. Each of the code sets and the code test set include a code wheel rotatably enga gable with each of the drive wheels, with each code wheel of a code set being supported for independent rotation on a common shaft or axis. For example, code set 18 includes code wheels 22a, 22b and 22n which are shown in rotative engagement with drive wheels 12a, 12b, and Mn respectively and are mounted on shaft 24. The code wheel 22a of code set 18' and the code wheels 23a, 23b and 23n of code test set 19 are also shown in rotative engagement with their respective drive wheel. Each code set is provided with the same number and arrangement of code wheels as code set 18. Each of the code wheels may be provided with a notch or slot, the angular position of which with respect to some given reference location is indicative of the code recorded in that code wheel. These slots are indicated in code set 18 by slots 28a, 28b and 28n in code set 18 by slots 28a, 2811 and in code test set 19 by slots 29a, 29b and 29n. The angular relationship of these slots as predetermined by inserting codes into the codemechanism 10 represents the code value for each code wheel. This angular relationship may be determined, and thus the code itself, by rotating the code wheels to some desired uniform location, the amount of displacement required to reach that location being the code value. This location or angular relationship may be sensed and represented by a fixed rigid member or bar positioned in operative relationship with the code sets or by some other element which can sense the position of these slots after a code has been entered into the code mechanism and thus determine the location of the slots with respect to each other. The use of a rigid bar or like element may permit the detection of the slots in an aligned location so as to act as a fixed position from whichthe coded information may be determined. Such a rigid bar may include the try bars 30 and 30 for code sets 18 and 18 and the try bar arrangement 31, to be described in greater detail below, for the code test set 19. Such rigid and the like try bar arrangements may be utilized to test the alignment of the slots along the direction of the try bars and coincident therewith so that a proper code insertion would require rotation of all of the code wheels into a position of alignment adjacent to the try bar associated with a code set. When the code.

wheels are in this alignment with such an arrangement, the code sets and code test set may be appropriately mounted so that the code set may be moved towards and into engagement with the try bars when the slots are in alignment, the slots and try bars being shaped for mating engagement. Such movement may be achieved by locating an appropriately shaped cam surface 34 on code test wheel 16 and positioning a cam follower supported on the shaft of each code set against cam surface 34 in a manner to be displaced by an appropriate cam shape, such as the raised cam portion 34a of cam 34, to move one code set at a time towards the rigid try bars. For example, cam followers 36 and 37 may be mounted on shafts 24 and 25 of code set 18 and code test set 19 respectively, and the code set otherwise supported to permit movement of the code sets towards their associated try bar, such as with a pivot or slot appropriately spring or otherwise biased, if needed. If the code inserted in the drive wheels 12a, 12b and 12n are such as to rotate the individual code wheels 22a, 22b and 22n of code set 18 so that the slots 28a, 28b and 28n are in alignment and adjacent to try bar 30, and the code test wheel 16 is rotated so that the cam portion 34a cams cam follower 36 in a direction towards try bar 30, the slots may be brought into engagement with try bar 30. Such movement may be detected by appropriate switch 38 (switch 39 for code test set 19) or other indicating device which in turn may be appropriately coupled to some desired utilization means 40 (such as a light, lock, or the like). It will be apparent that the other code sets may be provided with similar cam followers to provide a similar operation. It will also be apparent that if the codes inserted in the drive wheels are not such as to cause any of the code wheels to achieve the aligned relationship with their respective try bars, that none of the code sets will be moved into engagement with a try bar preventing the utilization means 40 from being actuated.

The drive wheels and the code test wheels may be selectively and sequentially rotated in the desired manner to insert a code into the code mechanism 10 and to then determine if any of the code sets are at the predetermined angular relationship which would bring them into alignment with their try bars by appropriate control and drive apparatus 42. Such an apparatus 42 may provide incremental or stepped rotation of the respective drive and code wheels in a controlled and repeatable manner to insure accurate insertion of code information to the code mechanism. The control and drive apparatus may include solenoids or stepping motors for remote insertion of codes or may include appropriate mechanical linkages for manual insertion of codes.

Itis desirable that the code wheels be either in engagement with the drive wheels or their associated try bar at all times to prevent the relative rotation of the code wheels with respect to the drive wheels and possible loss of code information. For example, the code of a code set may be changed when a code set is moved into engagement with its try bar by changing the angular relationship of the drive wheels with respect to each other and then bringing the code wheels back into engagement with the drive wheels by movement of the cam portion 34a from-engagement with the cam follower of that code set. 4

A preferred arrangement of elements and apparatus which may achieve the operation described above with respect to FIG. ll may be achieved with the elements described below with respect to the remaining figures of the drawing.

FIG. 2 illustrates a portion of the coded mechanism 10 showing a particularly effective arrangement of a typical drive wheel and its associated apparatus, such as drive wheel 12, the code wheels 22 and 22 of code sets 18 and 18 and the code wheel 23 of the code test set I? as well as a portion of the drive mechanism for operating the same. The drive wheel and code wheels 1 MULTIPLE CODE CODED MECHANISM BACKGROUND OF INVENTION Various coding mechanisms are utilized to control access to areas or devices or to control the occurrence of some event. The coding mechanisms have included various mechanical, electromechanical and electrical arrangements which required the knowledge by the operator of the code required to operate the coding mechanism or possession of a device which included the code somehow imprinted or otherwise impressed thereon to operate the coding mechanism. Such coding mechanisms include mechanical and magnetic locks, combination locks, and electronic circuits, or the like. In these prior coding mechanisms, a single code was required to operate or enable the mechanism.

There are applications where it is desired to prevent unauthorized access to or control of some device or event in which it would be desirable to have a coding mechanism which could be operated with more than one code so that different personnel could have access or control of the device or event with different codes and without knowledge of the other codes. With such a mechanism, multiple events and devices could be controlled by different. coded mechanisms with different personnel having codes which would operate or enable one or more different or the same coded mechanisms and its associated device or event.

It may also be desirable in some of these applications that the coded mechanism be monitored by someone who either has no access to any of the codes or only a limited access to the multiple codes utilized. In such a use, the coded mechanism should have the capability of being checked to insure that the proper codes were inserted therein without the monitoring personnel necessarily having knowledge of the operating or enabling codes.

SUMMARY OF THE INVENTION In view of the above, it is an object of this invention to provide a multiple code, coded mechanism in which a plurality of codes may be stored, any one of which may actuate the mechanism.

It is a further object of this invention to provide such a multiple code coded mechanism which may be remotely operated.

It is a still further object of this invention to provide a coded mechanism in which a plurality of enabling codes may be stored and in which the stored codes may be checked by an independent code having no knowledge of the other codes and without enabling the mechanism.

Various other objects and advantages will appear from the following description of the invention, and the most novel features will be particularly pointed out hereinafter in connection with the appended claims. It will be understood that various changes in the details, and arrangements of the parts, which are herein described and illustrated in order to explain the nature of the invention, may be made by those skilled in the art.

The present invention relates to a multiple code coded mechanism which includes a plurality of code sets made up of independently rotatable code wheels engageable with a plurality of independently rotatable drive wheels with one drive wheel associated simultaneously with a code wheel of each code set together with means for sequentially rotating the drive wheels and consequently the code wheels engaged with each drive wheel to store a code in the code wheels of each code set represented by the angular displacement of the code wheels with respect to a reference location and to rotate the code wheels of all code sets to determine if the code wheels of a code set have the angular relationship determinative of a code. A separate code check set includes code wheels associated with each of the drive wheels at an angular relationship representative of the summation of the codes of all the code wheels associated with a particular drive wheel.

DESCRIPTION OF DRAWING The present invention is illustrated in the accompanying drawing wherein:

FIG. 1 is a simplified and somewhat diagrammatic perspective view showing certain features'of the operation of the present invention and the arrangement of elements to achieve this operation;

FIG. 2 is a cross sectional end view showing a drive wheel and its associated code wheels as well as a portion of the drive mechanism which may be utilized to provide the desired rotation of drive and code wheels of the multiple code coded mechanism;

FIG. 2a is a perspective view of a portion of the drive mechanisms control cam shown in FIG. 2;

FIG. 2b is a perspective view of a typical code wheel arrangement which may be utilized with the apparatus shown in FIGS. 1 and 2;

FIG. 3 is a cross sectional and somewhat diagrammatic end view of the try code wheel and the cams and camming surfaces associated therewith;

FIG. 3a is a side view showing the location of many of the elements in simplified form whichvare associated with the try code wheel;

FIGS. 3b, 3c and 3d illustrate the try code wheel at various stages of operation of the multiple code coded mechanism; and

FIG. 4 is a somewhat simplified view showing a portion of the try code wheel and various apparatus which may be associated therewith to provide certain operational functions and indications for the multiple code coded mechanism.

DETAILED DESCRIPTION Many of the features of the multiple code coded mechanism of this invention are illustrated in somewhat simplified and diagrammatic form in FIG. ii to illustrate the relative arrangements and locations of the various elements utilized in the mechanism. The multiple code coded mechanism 10 illustrated in FIG. 1 may include a plurality of drive wheels 12a, 12b and Mn which are independently rotatable on a common axis or shaft 14. The number of drive wheels utilized is dependent upon the desired number of digits utilized in the codes which operate the mechanism 10 and consequently the population of the code and its complexity and resistance to defeat. In addition, for precise movement of the drive wheels and control of their angular position, they may be provided with regularly spaced teeth so that they may he stepped or moved one increment at a time determinedby the size and spacing of these teeth. The size of the drive wheels may be selected to provide a desired number of angular incremental steps or movements and may be dependent may be any one of those shown in FIG. 1 or any additional drive wheel and code wheels which may be provided along the longitudinal direction of the code mechanism 10. As is shown in this and subsequent figures, the various drive wheels, code wheels, and the like may be provided with gear-type teeth to provide an easily and repeatably indexed and incrementally varied coding system in which the gaps between the teeth represent one bit of a code. The drive wheel and its associated code wheels may be stepped one bit at a time from position to position represented by the gear teeth and spaces. As stated above, this gear movement may be provided with suitable solenoids or the like (not shown) which may be electrically pulsed to provide an incremental rotary motion. This rotary motion may then be used to rock a pawl frame containing a separately controlled drive pawl 44 for each of the drive wheels and the code test wheel. The drive pawl 44 may function as a ratchet on the teeth of these wheels, stepping them a tooth at a time in a direction illustrated by the arrow 46 to vary the position of the drive wheels and code test wheel, a separately controlled hold pawl 48 may be provided for each wheel and may be biased into a hold position by an appropriate spring member 50. The drive pawl 44 and hold pawl 48 may be brought into appropriate engagement and disengagement with the wheel teeth by a suitable cam 52, which is shown in greater detail in FIG. 2a. The cam 52 may include a camming surface 54 for each drive pawl 44 and a camming surface 56 for each hold pawl 48. The camming surface 54 may include a recessed portion 58 which permits the drive pawl 44 to be brought into engagement with the drive wheel or code test wheel teeth while camming surface 56 is provided with a raised portion 60 to force the holding pawl 48 from engagement with the teeth. As is shown in FIG. 2a, each of the cam surface recesses 58 for each drive wheel or code test wheel are at a different angular location on the cam 52 so that only one drive pawl 44 is in engagement with its associated wheel at a particular angular position of cam 52. The hold pawls 48 may be designed to slip out of engagement with a wheel gear tooth when the drive pawl 44 rotates the wheel and then is driven back into engagement with the next tooth by spring member 50. The cam 52 is also provided with a detenting portion 61 at each desired angular position of cam 52, that is aligned with each recessed portion 58 and any other desired functional locations of the cam 52 to be described below. The detenting portion 61 may be engaged by a drive pawl connected to another solenoid or the like (not shown) which will step the cam 52 from one angular position to the next to provide a sequential engagement of the drive pawls 44 with each wheel. The raised cam portions 60 are all aligned at the same angular location so as to simultaneously disengage all the hold pawls 48 from each wheel at the same time to permit resetting of the wheels to an initial or reference angular location.

Thus, the gating cam has two types of physical features, namely notches and bumps. When a notch is in the proper position relative to a drive pawl, the tail of the drive pawl is freed to move toward the gating cam 52. This allows the upper end of the pawl to engage its associated wheel. When the notch is not in this position, the tail of the pawl rests on the remaining portion of the camming surface 54 of the gating cam and the drive pawl cannot contact its associated wheel. When a bump depresses the tail of a hold pawl, the pawl is disengaged from the gear to allow the wheel to return to its reset or reference position. The reference position may be established by a zero stop bar 62 as in FIG. 2 which may be supported in a rigid and fixed position by a portion of the housing (not shown) or other portion of the coding mechanism 10. The stop bar 62 is located within an annular slot 64 in the drive wheels 12 and limits the angular movement of the drive wheel 12 to the distance of travel of the stop bar in the slot relative to the rotation of drive wheel 12. The wheel may be driven or biased towards the reference position by a suitable spring 66 which may encircle shaft 14 and be anchored to passageway 68. When the hold pawl is released, the drive wheels 12 will return to the position shown in FIG. 2 with the stop bar 62 against the end of slot 64.

As mentioned above, other cam surfaces may be provided on cam 52 to initiate certain other operations, for example, the gating cam 52 may be provided with various portions or bumps to actuate suitable interlocking arms which may coact with reference pins or locations on the drive wheels to insure that the drive wheels are in a reset position before the gating cam is ratcheted to the angular position at which a drive wheel is engaged with a drive pawl.

As brought out previously, the drive wheels have a reference position established by the zero stop bar 62. The code wheels also have a reference position established as that point or location where the notch or slot 28 or 29 is directly below a try bar, as shown by code wheel 22 in FIG. 2, while the slot 28' for code wheel 22' is at an angular position off reference. The code wheels, as illustrated by code wheel 69 in FIG. 2b may include a disc portion 70 having a single slot 28 which is aligned with a similar slot 28 or gear teeth spacing in a second portion 72 having evenly spaced teeth. The slots 28 in portions 70 and 72 are of sufficient depth and width to accept or engage with try bar 30 while the remaining angular positions of the code wheel 28 will be blocked from engagement with a try bar by the remaining unslotted portion of disc 70. Thus, each code wheel has an angular position at which the code wheel may be engaged via its slot with a try bar, such as shown by slot 28 with try bar 30. The code wheels may be brought into engagement with a try bar by an appropriate support such as a frame 74 mounted on a fixed pivot or shaft 76 so that the gear teeth of the code wheels are in either engagement with the teeth of the drive wheels or in engagement via the slot 28 with try bar 30. With the code wheel in engagement with try bar 30, the spacing between the fixed bar 30 and the drive wheel 12 is such as to disengage the teeth of the code wheels with the drive wheels. The remaining code sets and the code test set shown in FIG. 2 are provided with similar support frames 74 and 75 and frame pivots 76' and 77. Each of the code wheels is rotatably mounted on the code set frame 74, 74 and 75 and shafts 24, 24' and 25 for separate rotation by its respective drive wheel.

In the illustrated embodiment of FIG. 2b, the code wheel portion 72 may be provided with a desired number of teeth and teeth spaces, such as 16 so that each digit of a code in such an arrangement may include 16 bits. Either more or less teeth may be utilized with the appropriately sized and numbered teeth with the drive wheels being selected to engage the number of code sets and code test sets desired.

A correct code may be identified, as stated above, by having all the slots of all code wheels in a code set in alignment so that the code wheels, which are mounted on a single frame, may be simultaneously rotated about the frame pivot to engagement with a try bar and out of engagement with the drive wheels. If any one or more of the code wheels do not have their slots in alignment with the other code wheels, the frame may not pivot the code wheels to engagement with the fixed bar but will be blocked by the disc 70 of the out of alignment code wheels and will maintain all the code wheels in engagement with their respective drive wheels. Provision may be made so that a stored code may not be changed unless a correct code is entered for a particular code set.

The rotation of a code set to engagement with a try bar may be achieved by the arrangement shown in FIG. 3 through FIG. 3d which illustrate, in simplified end view form, the code test wheel 16 and associated apparatus as well as the code wheels and code test wheel associated with drive wheel 12n. FIGS. 3 and 3a illustrate the code test wheel 16 and its associated features in its reset or reference position, spring biased against the stop bar 62. FIG. 3a is a fragmentary side view of the code test wheel 16 showing a portion of the code set 18 and the code test 19 in this reference position to illustrate the relative positions and locations of the various elements of the device, code set 18 purposely being omitted for sake of clarity in the illustration.

The code test wheel 16 may be provided with an annular cam 80 having a slot 82 and ramp 84 leading to the inside surface of the cam 80. Each code set and the code test set may be provided with an arm with a cam follower roller attached thereto extending from the code set frame so that the code set cam follower roller rests against the outer surface of cam 80. For example, code sets 18 and 18' may include arms 86 and 86' which are attached to or are an appendage of the frame 74 and 74 with a cam follower wheel 88 rotatably affixed to the distal end thereof. The arms 86 and 86 and cam followers 88 may be appropriately spring biased against the outer surface of cam 80 about the pivots 76 and 76 by appropriate spring biasing members 85 and 85 The end of the ramp portion 84 of cam 80 is positioned so as to abut against stop bar 62 at the reference position of code test wheel 16 which, like drive wheels 12 is appropriately biased in the direction of arrow 46 in the same manner as the drive wheels.

The annular cam 80 with its slot 82 and ramp 84 acts as a gating and programming cam to sense whether a code set is at the predetermined angular relationship aligned with its try bar and when such is sensed to guide the cam follower 88 associated therewith to a location which will bring the slots 28 of the code wheels into engagement with the try bar and hold the same at that location until other functions may be completed. These other functions include the recoding of this code set if such is desired, the changing of the code test set if a code set code is being changed, the providing of an indication of a correct code, and the like. In order to provide these additional functions, a blocking cam 90 may be positioned in operative association with code test wheel 16 and its cam 80 adjacent to the cam 80 with an outer diameter of approximately that of the cam 80. Each of the cam follower arms 86 and 86 of the codes sets 18 and 18' are provided with an additional cam follower 92 and 92 which engages the cam surface of blocking cam 90. The blocking cam 90 may include a somewhat rectangular cutout portion 91 which engages the stop bar 62 and limits the travel of the blocking cam 90. In addition, an appropriate spring bias, such as the spring member 94, which is in engagement with stopping bar 62, cutout portion 91 and shaft 14, may bias the blocking cam 90 in a rotary direction opposite to that of arrow 46. Blocking cam 90, like cam is shown in the reference position against one wall of the cutout portion 91. The blocking cam may also be provided with angular cutout portions 96 and 96 asso ciated with each of the code sets with the cutout portions 96 and 96 located adjacent to the cam followers 92 and 92 at the reference position and which coact with the slot 82 and ramp 84 of cam 80 in a manner de scribed below. Blocking cam 90 also includes a generally rectangular cutout 98 which is angularly offset from the cam follower 93 of the code test set at the reference position and which cooperates therewith as described below. The additional features of the code test set will be described below with reference to other of the figures.

As described above, if an attempt is made to enter a code into the code mechanism 10 and the code entered is not that of any of the code sets, none of the code sets will be angularly displaced so that their code slots are in the predetermined angular relationship aligned with a try bar. Thus, all of the code sets, as well as the code test set will be blocked from rotating into engagement with a try bar and out of engagement with their respective drive wheels. Rotation of the code test wheel 16, in this situation, will have no affect on the code sets and an indicating means may be blocked from initiation. Should a correct code be entered by the various drive wheels to bring the code wheels of a code set into the predetermined angular relationship indicative of a correct code, the code set will be prevented, at least initially, from movement of the code gears towards a try bar by the cam 80. After entry of the trial code by the racheting of cam 52 from one angular position to the next sequentially engaging the drive pawls of the respective drive wheels and rotating of the drive wheels and their associated code wheels by the trial code amounts, the code test gear 16 may be rotated by a similar drive pawl and camming surface arrangement on cam 52 to bring the slot 82 of cam 80 sequentially beneath the cam followers 88 of each of the code sets. In FIG. 3 and FIG. 3b, code set 18 is shown as being rotated in the predetermined angular relationship by insertion of a correct trial code. As the code test wheel 16 and cam 80 is rotated, the cam follower 88 may enter slot 82 along ramp 84 and cam follower 92 may enter the cutout portion 96 of blocking cam 90. The cam follower 88 may follow ramp 84 to the inside surface of cam 80 and the slot 28 of the code wheels 22 may be brought into engagement with the fixed try bar 30 and out of engagement with the drive wheels, as shown in FIG. 3b. The cam follower roller 92 may simultaneously come into contact with the cutout portion 96 of blocking cam 90. Cam follower 92 may then cause blocking cam 90 to rotate against its spring bias until the stop bar 62 reaches the other side or wall of cutout portion 91. As the blocking cam 90 is rotated to its second stop position, the outer cam surface of cam 90 will be rotated below all the remaining code set cam followers, as indicated by code set 18' in FIG. 3b, so that even if the code set 18' has the predetermined angular relationship, cam follower 92' and thus cam follower 88' will be blocked by the outer cam surface of blocking cam 90 from slot 82 of cam 80 and code set 18 will be maintained in engagement with the drive wheels. Thus, only the first code set having a proper code will be disengaged from the drive wheels and engaged with its fixed try bar, thus permitting only one code set to be recoded at a time, should such be desired. It is also noted, from FIG. 3b, that as the blocking cam 90 is rotated, the slot portion 98 is rotated to a position below cam follower 93 of the code test set 19.

The try bar 31 for the code test set 19, as shown in FIGS. 3, 3a, 3b, 3c and 3d includes a fixed portion 100 and a movable portion 102. The fixed portion 100 may include a tab or extension for each of the code wheels of the code test set 19 which is arranged to engage the teeth spacings in the portion of the code wheel having gear-type teeth, such as the tab 104 shown in FIG. 3a. The movable try bar 102 includes tabs or extensions which are engagable with the slot 29 in the disc portion of the code wheels of the code test set 19, such as shown by tab 106 in FIG. 3a. The code test set 19 is coupled via arm 87 and cam follower 89 through the pivot point 77 to the gating cam 80 in the same manner as cam follower 88 for code set 18. The movable try bar 102 is coupled through the same pivot point 77 via cam follower 93 and arm 87 to the blocking cam 90 in the same manner as the cam follower 92 of code set 18. It can be seen that the tooth portion of the code wheels 23 of the code test set 19 may engage tabs 104 of the fixed try bar 100 at any angular position of the code sets while the disc portion of the code wheels 23 must have the slot 29 in alignment with the tabs 106 of the movable try bar 102 to engage the try bar 31. The arm 87' may be provided with an appropriate enable stop bar 110 which is affixed thereto and positioned in the path of movement of a stop lug 112 which is attached to the code test wheel 16 to function in a manner described below. I

When one of the code sets has a correct-code entered into the code mechanism via the drive wheels 12, such as shown by code set 18 in FIG. 30, and the associated cam follower is gated by gating cam 80 to the inside surface of cam 80 and the slot 98 of blocking cam 90 rotated below the cam follower 93 of the movable try bar 102, when the try code test wheel 16 is rotated to the position where slot 82 of cam 80 is adjacent the cam follower 89 of code test set 19, the cam follower 89 will follow ramp 84 and rotate code set 19 so that the teeth portion of its code wheels are in engagement with tabs 104 of the fixed try bar 100 while the disc portion of the code test set code wheels pushes the tabs 106 of the movable try bar 102 around the pivot point 77 so that the cam follower 93 engages slot 98. In this position, the enable stop arm 110 on cam follower arm 87 is rotated out of the path of movement of stop lug 112 so that the code test wheel 16 may be rotated beyond this position to some point where a switch closure or other indicating means may be utilized to sense the fact that a correct code had been entered in one of the code sets, e.g., code set 18'. Also, since both the code set having a correct code and the code test set 19 are rotated out of engagement with the code test wheel 16, a change in code entered into the code mechanism via the drive wheels 12 (after resetting the drive wheels at their reference location by releasing their hold pawls with code set 18 and code test set 19 out of engagement with the drive wheels) will change the code of code set 18' and simultaneously change the code in the code test set 19 by the same increments. When the code mechanism is again reset by resetting code test wheel 16 and the drive wheels 12 having the new code inserted, the new code will be inserted in both the code set and the code test set.

If the code entered into the coding mechanism is not that of any of the code sets but is that of the code test set 19, the slot 29 of the code wheels of the code test set 19 will be in the predetermined angular location in alignment with tabs 104 and 106 of the movable try bar 102 and fixed bar 100. When the code test wheel 16 is rotated to the position where cam follower 89 is adjacent slot 82 of cam 80, the cam follower 89 will enter slot 82 and follow ramp 84 to the inside cam surface of cam as shown in FIG. 3d and rotate the code set 19 about the pivot point 77 to engage slots 29 with both the fixed and movable try bar tabs. The rotation of the code set 19 may be sensed by some appropriate switch closure or the like (not shown) to indicate insertion of the code check set 19 code. Since the movable try bar 102 and its associated cam follower arm 87 is not rotated because of the blocking action of blocking cam 90, the stop 110 and stop lug 112 will prevent rotation of try wheel 16 beyond the point of their engagement and prevent closure of the switch or other indicating device which indicates a correct code entered in any of the code sets. It is noted that the same indicator that indicates rotation of the code check set will be initiated when a correct code is entered in one of the code sets because of rotation of code check set 19 as shown in FIG. 30. I

FIG. 4 illustrates features which may be utilized to provide an indication of correct entry of code and other apparatus to permit insertion of new codes into the coding mechanism. A switch shorting bar 114 may be mounted on drive wheel 16 by an appropriate fixture 116 so, that the shorting bar 114 makes contact between two conductive elements supported by member 118 on a portion of the code mechanism housing. The location of shorting bar 114 should be such as to make contact with the conductors 120 at an angular position of drive wheel 16 beyond that at which the stop bar 1 10 would normally engage the stop lug 112 so as to insure indication of a correct code of one of the code sets.

In order to insert a new code in one of the code sets, and simultaneously to change the code in the code check set, the code set and code check set must be held in the position shown in FIG. 3c while the new code is being inserted and a correct code insertion, which may be indicated by the switch closure caused by shorting bars 114 in FIG. 4, must occur. Such may be achieved by positioning a recode lug 122 at a location beyond switch closure on code test wheel 16 and by positioning a hold pawl 124 in an engagable location near lug 122 and in operational engagement with a cam surface on cam 52 which will hold the hold pawl 124 in locking engagement with recode lug 122 at an angular position of cam 52, such as at the end of the gating cycle of cam 52. With the hold pawl 124 engaging lug 122, the hold pawls of the drive wheels 12 may also be released by their cam surfaces on cam 52 so that the drive wheels all return simultaneously to their reference position. A new code may then be entered into each appropriate drive wheel, and the cam 52 then ratcheted to release the hold pawl 124 from lug 122. Drive wheels 12 and code test wheel 16 may then return to their reference location and the code set and code test set will be brought back into engagement with the drive wheels and rotated, thus changing the code of the respective code set and the code test set. By such an arrangement, the cam 52 should thus include an angular ratcheted location and appropropriate cam surfaces for each drive wheel, for the code test wheel and for the recode lug hold pawl and for recode of each drive wheel.

A recode operation may be defined as subtraction of an existing code and the addition of a new code. First, the existing code of one or more code sets is entered by moving the drive wheels from their reference positions to the point where the code wheels of a code set reach their predetermined angular position, i.e., with their notches lined up under their respective try bar. The code set and the code check set are then disengaged from the drive wheels by cam 80 and blocking cam 90 and the drive wheels returned to the zero or reference position while maintaining the disengagement. A new code may then be inserted into the coded mechanism through the drive wheel. The code set and code test set may then be released by the cam 80 and blocking cam 90 to reengage the code set and the code test set with the drive wheels which are then returned to the refer ence position.

In a typical code mechanism 10, for example, six code sets may be distributed about the periphery of the drive wheels and code test wheel with a code test set. If each code wheel of each code set includes 16 teeth and 16 spaces, the code mechanism will have a code population of 16,777,216. Any one of the six codes in the code sets may be utilized to enable or actuate the coded mechanism 10. The code check set code will be the sum of the codes of the code sets and is in a modulo-sixteen addition mode which amounts to adding in the base of 16 and dropping all carries. It should be noted for operation by this mechanism, that the code check set code should be different from any of the code set codes. The following table illustrates typical codes which may be entered in each of the code wheels of a six code set coded mechanism and the code check set code which is commensurate with these codes. The bracketed number in code set 1 and in the code check set code illustrates how the code check set code varies if the code set 1 code is changed to the bracketed number.

Code Wheel No.

The coded mechanism includes a central shaft assembly composed of a plurality of drive wheels, a code test wheel and a pair of cam elements. The drive wheels and code test wheel are driven in predetermined order by an appropriate drive mechanism, such as suitable solenoids and drive and hold pawls. A cam arrangement may control the order in which the respective wheels are driven. A plurality of code sets and a code test set in which individual access codes have been entered may be driven by the drive wheels of this central shaft assembly, each of the code sets and the code check set being arranged about the periphery of the drive wheels. When any one of the codes stored in a code set is correctly inserted into the coded mechanism, the code test wheel may be driven to produce an indication or switch output. The code check set (when a predetermined code has been inserted into one of the code sets) only functions to give an indication that a desired code has been set into one of the code sets while the correct insertion of the code check set code will not provide code mechanism switch output.

What is claimed is:

1. A multiple code coded mechanism comprising a plurality of drive wheels; a code test wheel; means for rotatably supporting each of said drive wheels and said code test wheel on a common axis for independent rotation of each; a plurality of code sets supported about the periphery of said drive wheels and said code test wheel, each of said code sets including an independently rotatable code wheel for each of said drive wheels and engagable therewith with each code wheel rotatably supported on a common axis, each of said code wheels including a location at its periphery whose angular relationship is representative of a code bit, and means operatively engaged with said code test wheel for indicating whether all of said code wheels in a code set are at a predetermined angular relationship; means for sequentially rotating each of said drive wheels and then said code test wheel and for simultaneously rotating the associated code wheels through rotating of said drive wheel of all code sets to change their angular relationships and with said code test wheel rotation for indicating whether the code wheels of one of said code sets has achieved said predetermined angular relationship indicative of a correct code.

2. The coded mechanism of claim 1 including means for rotatively biasing said drive wheels and said code test wheel toward a preselected angular reference position.

3. The coded mechanism of claim 1 wherein said sequential drive wheel and code test wheel rotating means includes means associated with each of said drive wheels and said code test wheel for engagably rotating said wheels and rotatable cam means associated with each of said wheels for sequentially engagng said rotating means with said drive and code test wheels.

4. The coded mechanism of claim 3 including cam means associated with said code test wheel and each of said code sets for moving said code wheels from engagement with said drive wheels when the code wheels of a code set achieve said predetermined angular relationship.

5. The coded mechanism of claim 4 wherein each of said code wheels of said code sets includes a radial slot in their peripheries and said predetermined angular relationship is with the slots of the code wheels of a code set in alignment parallel to the axis of the code set.

6. The coded mechanism of claim 5 including a rigid bar positioned adjacent each code set in position to engage the slots of said code wheels when said code set is moved by said cam means and wherein code wheels of said code sets includes blocking means for preventing said code set movement and code wheel and drive wheel disengagement when said slots are not in alignment.

7. The coded mechanism of claim 6 including means for changing the angular relationships of the code wheels in the code set having its slots in engagement with a rigid bar.

8. The coded mechanism of claim 7 wherein said cam means of said code test wheel includes a first cam means biased in one rotational direction for effecting movement of said code sets to engage said rigid bars and disengage said drive wheels and a second cam means biased in the other rotational direction for blocking movement of other code sets to engage said rigid bars.

9. The coded mechanism of claim 8 including a code check set having code wheels, cam means, blocking means and slots like said code sets, a rigid bar positioned adjacent said code check set in position to engage a first portion of the code wheel slots of said code check, and a movable bar positioned adjacent said code check set in position to engage the remaining portion of said code wheel slots and to prevent movement of said code check set from drive wheel engagement when said slots are not in alignment.

10. The coded'mechanism of claim 9 wherein said second cam means includes a cam surface for cooperating with the cam means of said code check set for moving said movable bar from blocking said movement of said code check set when a code set is in said predetermined angular relationship.

11. The coded mechanism of claim 10 including means for changing the angular relationships of the code wheels of said code check set simultaneously and equivalently with the code wheels of a code set having its slots in engagement with a rigid bar when the first portion of the slots of said code check set code wheels are in engagement with its rigid bar. 

1. A multiple code coded mechanism comprising a plurality of drive wheels; a code test wheel; means for rotatably supporting each of said drive wheels and said code test wheel on a common axis for independent rotation of each; a plurality of code sets supported about the periphery of said drive wheels and said code test wheel, each of said code sets including an independently rotatable code wheel for each of said drive wheels and engagable therewith with each code wheel rotatably supported on a common axis, each of said code wheels including a location at its periphery whose angular relationship is representative of a code bit, and means operatively engaged with said code test wheel for indicating whether all of said code wheels in a code set are at a predetermined angular relationship; means for sequentially rotating each of said drive wheels and then said code test wheel and for simultaneously rotating the associated code wheels through rotating of said drive wheel of all code sets to change their angular relationships and with said code test wheel rotation for indicating whether the code wheels of one of said code sets has achieved said predetermined angular relationship indicative of a correct code.
 2. The coded mechanism of claim 1 including means for rotatively biasing said drive wheels and said code test wheel toward a preselected angular reference position.
 3. The coded mechanism of claim 1 wherein said sequential drive wheel and code test wheel rotating means includes means associated with each of said drive wheels and said code test wheel for engagably rotating said wheels and rotatable cam means associated with each of said wheels for sequentially engagng said rotating means with said drive and code test wheels.
 4. The coded mechanism of claim 3 including cam means associated with said code test wheel and each of said code sets for moving said code wheels from engagement with said drive wheels when the code wheels of a code set achieve said predetermined angular relationship.
 5. The coded mechanism of claim 4 wherein each of said code wheels of said code sets includes a radial slot in their peripheries and said predetermined angular relationship is with the slots of the code wheels of a code set in alignment parallel to the axis of the code set.
 6. The coded mechanism of claim 5 including a rigid bar positioned adjacent each code set in position to engage the slots of said code wheels when said code set is moved by said cam means and wherein code wheels of said code sets includes blocking means for preventing said code set movement and code wheel and drive wheel disengagement when said slots are not in alignment.
 7. The coded mechanism of claim 6 including means for changing the angular relationships of the code wheels in the code set having its slots in engagement with a rigid bar.
 8. The coded mechanism of claim 7 wherein said cam means of said code test wheel includes a first cam meaNs biased in one rotational direction for effecting movement of said code sets to engage said rigid bars and disengage said drive wheels and a second cam means biased in the other rotational direction for blocking movement of other code sets to engage said rigid bars.
 9. The coded mechanism of claim 8 including a code check set having code wheels, cam means, blocking means and slots like said code sets, a rigid bar positioned adjacent said code check set in position to engage a first portion of the code wheel slots of said code check, and a movable bar positioned adjacent said code check set in position to engage the remaining portion of said code wheel slots and to prevent movement of said code check set from drive wheel engagement when said slots are not in alignment.
 10. The coded mechanism of claim 9 wherein said second cam means includes a cam surface for cooperating with the cam means of said code check set for moving said movable bar from blocking said movement of said code check set when a code set is in said predetermined angular relationship.
 11. The coded mechanism of claim 10 including means for changing the angular relationships of the code wheels of said code check set simultaneously and equivalently with the code wheels of a code set having its slots in engagement with a rigid bar when the first portion of the slots of said code check set code wheels are in engagement with its rigid bar. 